Systems and methods for machine learning based optimization of pulse sequences for quantum key distribution

ABSTRACT

A device may include a processor configured to select a quantum key distribution transmission; identify an optical fiber path via which the quantum key distribution transmission is to be performed; determine one or more values for at least one transmission parameter for the identified optical fiber path; and select a pulse script for the optical fiber path based on the determined one or more values for the at least one transmission parameter. The processor may be further configured to perform the quantum key distribution transmission via the identified optical fiber path using the selected pulse script.

BACKGROUND INFORMATION

Computer devices used by government agencies, financial institutions(e.g., banks or trading houses), or large corporate enterprises may sendand receive sensitive information that requires a high degree ofsecurity. To securely transfer information, the computer devices may useencryption to protect sensitive information and/or may requireauthentication or authorization. Reliable distribution of encryptionkeys may pose various challenges.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an environment according to an implementationdescribed herein;

FIG. 2 is a diagram illustrating exemplary components of a device thatmay be included in a component of FIG. 1 according to an implementationdescribed herein;

FIG. 3 is a diagram illustrating exemplary components of the quantum keydistribution management system of FIG. 1 according to an implementationdescribed herein;

FIG. 4 is a diagram illustrating exemplary components of the quantumoptical evaluation system of FIG. 3 according to an implementationdescribed herein;

FIG. 5 is a diagram illustrating exemplary components of the opticalpaths database of FIG. 4 according to an implementation describedherein;

FIG. 6 is a diagram illustrating exemplary components of the quantumoptical optimization system of FIG. 3 according to an implementationdescribed herein;

FIG. 7 illustrates a flowchart for processing a quantum key distributiontransmission according to an implementation described herein;

FIG. 8 is a diagram of a plot of fidelity versus transmission distanceaccording to an implementation described herein; and

FIG. 9 is a diagram of an exemplary pulse script according to animplementation described herein.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

The following detailed description refers to the accompanying drawings.The same reference numbers in different drawings identify the same orsimilar elements.

Encrypted communication is essential for many fields, such as finance,defense, the medical field, satellite information system, etc. Securityprotocols involve cryptographic keys for encrypting messages and/ordigital certificates for authenticating users or devices. For example, aPublic Key Infrastructure (PKI) system may manage the creation, storage,and distribution of digital certificates and use the digitalcertificates to verify ownership of public keys. Distribution of digitalcertificates and/or cryptographic keys for a communication session mayrequire a secure connection.

Cryptographic keys may be distributed via a quantum key distribution(QKD) link. A QKD link may be implemented by sending photons via anoptical fiber (or through free space) and using a cryptographic protocolthat enables the two parties communicating via the QKD link to preventeavesdropping either by using quantum indeterminacy to preventmeasurement of a particular quantum state or by exchanging photons in anentangled state. Because measuring one photon of an entangled pair ofphotons affects the other photon in the pair, anyone intercepting eitherphoton alters the entangled pair and reveals that the communication hasbeen compromised. Thus, a QKD link may be used to securely distributecryptographic keys using quantum bits of information, also referred toas qubits.

However, the distance and quality of transmission of photonic quantumbits may be limited due to a number of different factors along thetransmission path. The factors may include environmental factors, suchas gravity or light disturbances along the transmission path, factors inthe transmission medium (e.g., factors associated with an optical fiberpath), such as material impediments along the transmission path, thelengths and/or turns of individual optical fibers along the path, and/oroperational factors associated with the transmission, such as the powerlevel and number of wavelength division multiplexing (WDM) channels usedalong the transmission path. A measure of how accurately a source signalmay be reproduced is referred to as fidelity. Thus, the fidelity andlongevity of qubits along a QKD channel may be affected by many factorsassociated with the transmission path.

Systems and methods described herein relate to machine learning basedoptimization of pulse sequences for QKD. A neural network, and/oranother type of machine learning model, may be trained to select asequence of pulses, referred to as a pulse script, based on a set oftransmission parameters associated with a transmission path selected fora QKD transmission. For example, a distance for reliable fidelity for aQKD transmission within a Metro Area Network (MAN) may be limited to 100miles or less. By selecting a particular pulse sequence for a set oftransmission parameters using machine learning, it is possible toincrease the QKD transmission distance that satisfies a fidelityrequirement, in some examples by up to 30%, though transmission distancemay differ overall.

The term “machine learning process,” as used herein, may refer to aprocess performed without requiring user interaction, by using a trainedclassifier to make a decision, a prediction, and/or an inference for aselection of an optical pulse sequence for transmission. Furthermore, amachine learning process may refer to a process of training theclassifier using supervised (e.g., a labeled data set) or unsupervisedlearning (e.g., an unlabeled data set), using a trained classifier toarrive at a decision, prediction, and/or inference using a particulardata set, and/or updating or refining a trained classifier using aparticular data set.

A QKD management system may be configured to select a QKD transmissionand identifying an optical fiber path via which the QKD transmission isto be made. The QKD management system may determine values fortransmission parameters for the identified optical fiber path; select apulse script for the optical fiber path based on the determined valuesfor the transmission parameters using a machine learning model; and sendthe QKD transmission, as a set of qubits, via the identified opticalfiber path using the selected pulse script. The pulse script may definethe amplitude, frequency, and/or duration of a set of optical pulsesand/or time intervals between each of the set of optical pulses. Thepulse script may be implemented as a set of instructions, in a computerlanguage, for an optical transceiver to generate the set of opticalpulses.

The transmission parameters may include environmental parameters, suchas, for example, a gravitational disturbance parameter, a lightdisturbance parameter, a temperature disturbance parameter, avibrational disturbance parameter, and/or another type of environmentalparameter. Values for the environmental parameters associated with theoptical fiber transmission path may be obtained, for example, fromenvironmental sensors associated with the optical fiber paths.

Furthermore, the transmission parameters may include fiber parameters,such as, for example, a parameter relating to a material impediment in afiber along the identified optical fiber path, a number of fiber turnsalong the identified optical fiber path, a fiber linearity functionassociated with the identified optical fiber path, a fiber non-linearityfunction associated with the identified optical fiber path, a pathlength for the identified optical fiber path, a span number for theidentified optical fiber path, a maximum span length for the identifiedoptical fiber path, an average span length for the identified opticalfiber path, a number and type of reconfigurable optical add-dropmultiplexers (ROADMs), optical transceivers/transponders, and/or opticalcross-connects associated with the identified optical fiber path, and/orother types of fiber parameters. Values for the fiber parametersassociated with the optical fiber transmission path may be obtained, forexample, from an optical network management system, associated with theoptical fiber paths, that maintains information relating to the fibersand optical devices for the optical network in which the identifiedoptical fiber path is located.

Moreover, the transmission parameters may include operational parametersassociated with the QKD transmission, such as, for example, a frequencyfor a WDM channel associated with the identified optical fiber path, apower level for a WDM channel associated with the identified opticalfiber path, a number of WDM channels associated with the identifiedoptical fiber path, a differential group delay associated with theidentified optical fiber path, joint bit-rate and modulation formatidentification (BR-MFI) information associated with the identifiedoptical fiber path, and/or other types of operational parameters. Valuesfor the operational parameters associated with the optical fibertransmission path may be obtained, for example, from the QKD system thatis to perform the QKD transmission.

FIG. 1 is a diagram of an exemplary environment 100 in which the systemsand/or methods, described herein, may be implemented. As shown in FIG.1, environment 100 may include networks 110-A to 110-N (referred toherein collectively as “networks 110” and individually as “network 110”)that include QKD systems 120-A to 120-N (referred to herein collectivelyas “QKD systems 120” and individually as “QKD system 120”),respectively, a QKD link 130, a provider network 140 that includes a QKDmanagement system 150 and an optical network management system 160, andone or more sensors 170.

Network 110 may include a QKD system 120 configured to send and/orreceive optical signals via QKD link 130. Network 110 may include alocal area network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN), an optical network, a cable television network, asatellite network, a Radio Area Network (RAN) (e.g., a Fourth Generation(4G) Long Term Evolution (LTE) RAN, a Fifth Generation (5G) New Radio(NR) RAN, etc.), a core wireless network (e.g., a 4G core network, a 5Gcore network, etc.), an ad hoc network, a telephone network (e.g., thePublic Switched Telephone Network (PSTN) or a cellular network), anintranet, or a combination of networks.

QKD system 120 may include an optical transceiver configured to generatea QKD transmission via QKD link 130 based on a set of optical pulses.For example, QKD system 120 may connect to a data center in network 110and may enable an exchange of cryptographic keys between the data centerand another data center in another network 110. As another example, QKDsystem 120 may connect to a RAN and may enable an exchange ofcryptographic keys between a wireless communication device (e.g., asmart phone) and an application server in another network 110. As yetanother example, QKD system 120 may connect to a quantum random numbergenerator and may distribute quantum random numbers to other network 110via QKD link 130. QKD system 120 may provide data relating to operationof QKD link 170 to QKD management system 150.

QKD link 130 may connect two networks 110 using an opticalcommunications link that includes a QKD capability. QKD link 130 may beused to exchange quantum keys between two networks 110. QKD link 30 mayinclude a set of optical fibers and/or optical devices, such a ROADMs,optical transceivers, transponders, and/or amplifiers, and/or opticalcross-connects. While QKD link 130 is shown between network 110-A andnetwork 110-N for illustrative purposes, in practice, any two networks110 may be connected via QKD link 130. Furthermore, any connectionbetween provider network 140 and network 110 may include QKD link 130.In addition, QKD link 130 may facilitate data center redundancy,failover, and backup capabilities. For example, network 110-N may act asa backup to all or a portion of the components of network 110-A, and mayuse QKD link 130 to exchange data securely.

Provider network 140 may be associated with a provider of communicationservices that manages QKD systems 120 and QKD links 130. Providernetwork 140 includes QKD management system 150 and optical networkmanagement system 160. QKD management system 150 may include one or moredevices, such as computer devices and/or server devices, which manageQKD systems 120. For example, QKD management system 150 may select apulse script for a QKD transmission to be performed by QKD system 120based on transmission parameters associated with the QKD transmission.QKD management system 150 may use a trained machine learning model toselect a pulse script based on the transmission parameters and providethe selected pulse script to QKD system 120.

Optical network management system 160 may manage an optical network thatincludes QKD link 130. The optical network may include optical paths andeach optical path may include one or more optical fibers, one or moreoptical connections (e.g., optical cross-connects), and/or one or moreoptical devices. The optical devices may include ROADMs, opticaltransceivers, optical transducers, optical amplifiers, and/or othertypes of optical devices. Optical network management system 160 maymaintain information relating to particular optical paths, such as thetypes, lengths, and/or numbers of optical fibers and/or optical devicesassociated with each connection, as well as optical propertiesassociated with particular optical fibers and/or optical devices.Optical network management system 60 may provide the fiber informationrelating to optical fiber paths to QKD management system 160.

Sensor 170 may include an environmental sensor located in proximity(e.g., within a particular distance) of QKD link 130. Sensor 170 mayinclude a temperature sensor, a gravitational sensor, a seismic sensor,a vibrational sensor, a light sensor, a sensor to detect high energyparticles, and/or another type of environmental sensor. Sensor 170 mayprovide sensor data to QKD management system 170.

Although FIG. 1 shows exemplary components of environment 100, in otherimplementations, environment 100 may include fewer components, differentcomponents, differently arranged components, or additional componentsthan depicted in FIG. 1. Additionally, or alternatively, one or morecomponents of environment 100 may perform functions described as beingperformed by one or more other components of environment 100. As anexample, in some implementations, QKD system 120 may directly select apulse script using machine learning. As another example, QKD managementsystem 150 may include optical network management system 160 or viceversa. As yet another example, sensors 170 may provide sensor data to asensor management system (not shown in FIG. 1) that aggregates sensordata for QKD links 130 and the sensor management system may provide theaggregated sensor data to QKD management system 150.

FIG. 2 illustrates example components of a device 200 according to animplementation described herein. QKD system 120, QKD management system150, optical network management system 160, and/or sensor 170 may eachinclude one or more devices 200. As shown in FIG. 2, device 200 mayinclude a bus 210, a processor 220, a memory 230, an input device 240,an output device 250, and a communication interface 260.

Bus 210 may include a path that permits communication among thecomponents of device 200. Processor 220 may include any type ofsingle-core processor, multi-core processor, microprocessor, latch-basedprocessor, and/or processing logic (or families of processors,microprocessors, and/or processing logics) that interprets and executesinstructions. In other embodiments, processor 220 may include anapplication-specific integrated circuit (ASIC), a field-programmablegate array (FPGA), and/or another type of integrated circuit orprocessing logic.

Memory 230 may include any type of dynamic storage device that may storeinformation and/or instructions, for execution by processor 220, and/orany type of non-volatile storage device that may store information foruse by processor 220. For example, memory 230 may include a randomaccess memory (RAM) or another type of dynamic storage device, aread-only memory (ROM) device or another type of static storage device,a content addressable memory (CAM), a magnetic and/or optical recordingmemory device and its corresponding drive (e.g., a hard disk drive,optical drive, etc.), and/or a removable form of memory, such as a flashmemory.

Input device 240 may allow an operator to input information into device200. Input device 240 may include, for example, a keyboard, a mouse, apen, a microphone, a remote control, an audio capture device, an imageand/or video capture device, a touch-screen display, and/or another typeof input device. In some embodiments, device 200 may be managed remotelyand may not include input device 240. In other words, device 200 may be“headless” and may not include a keyboard, for example.

Output device 250 may output information to an operator of device 200.Output device 250 may include a display, a printer, a speaker, and/oranother type of output device. For example, device 200 may include adisplay, which may include a liquid-crystal display (LCD) for displayingcontent to the customer. In some embodiments, device 200 may be managedremotely and may not include output device 250. In other words, device200 may be “headless” and may not include a display, for example.

Communication interface 260 may include a transceiver that enablesdevice 200 to communicate with other devices and/or systems via wirelesscommunications (e.g., radio frequency, infrared, and/or visual optics,etc.), wired communications (e.g., conductive wire, twisted pair cable,coaxial cable, transmission line, fiber optic cable, and/or waveguide,etc.), or a combination of wireless and wired communications.Communication interface 260 may include a transmitter that convertsbaseband signals to radio frequency (RF) signals and/or a receiver thatconverts RF signals to baseband signals. Communication interface 260 maybe coupled to one or more antennas/antenna arrays for transmitting andreceiving RF signals.

Communication interface 260 may include a logical component thatincludes input and/or output ports, input and/or output systems, and/orother input and output components that facilitate the transmission ofdata to other devices. For example, communication interface 260 mayinclude a network interface card (e.g., Ethernet card) for wiredcommunications and/or a wireless network interface (e.g., a WiFi) cardfor wireless communications. Communication interface 260 may alsoinclude a universal serial bus (USB) port for communications over acable, a Bluetooth™ wireless interface, a radio-frequency identification(RFID) interface, a near-field communications (NFC) wireless interface,and/or any other type of interface that converts data from one form toanother form.

As will be described in detail below, device 200 may perform certainoperations relating to selecting a pulse script for a QKD transmission.Device 200 may perform these operations in response to processor 220executing software instructions contained in a computer-readable medium,such as memory 230. A computer-readable medium may be defined as anon-transitory memory device. A memory device may be implemented withina single physical memory device or spread across multiple physicalmemory devices. The software instructions may be read into memory 230from another computer-readable medium or from another device. Thesoftware instructions contained in memory 230 may cause processor 220 toperform processes described herein. Alternatively, hardwired circuitrymay be used in place of, or in combination with, software instructionsto implement processes described herein. Thus, implementations describedherein are not limited to any specific combination of hardware circuitryand software.

Although FIG. 2 shows exemplary components of device 200, in otherimplementations, device 200 may include fewer components, differentcomponents, additional components, or differently arranged componentsthan depicted in FIG. 2. Additionally, or alternatively, one or morecomponents of device 200 may perform one or more tasks described asbeing performed by one or more other components of device 200.

FIG. 3 is a diagram illustrating exemplary components of QKD managementsystem 150. The components of QKD management system 150 may beimplemented, for example, via processor 220 executing instructions frommemory 230. Alternatively, some or all of the components of QKDmanagement system 150 may be implemented via hard-wired circuitry. Asshown in FIG. 3, application server 160 may include a quantum opticalevaluation system (QOES) 310, a quantum optical optimization system(QOOS) 320, and a pulse script generator 330.

QOES 310 may collect and evaluate data associated with QKD links 130,such as, for example, environmental parameters data, fiber parametersdata, and/or operational parameters data, and provide the collected datato QOOS 320. Exemplary components of QOES 310 are described below withreference to FIG. 4. QOOS 320 may select a pulse script to be generatedfor a QKD transmission based on information collected by QOES 310 usingone or more trained machine learning models. Exemplary components ofQOOS 320 are described below with reference to FIG. 6. Pulse scriptgenerator 330 may generate a pulse script based on a pulse scriptselected by QOOS 320. For example, pulse script generator 330 maygenerate a script in a particular computer language that instructs anoptical transceiver to generate a set of pulses of a particularamplitude, frequency, and/or duration with specified time intervals thepulses. Pulse script generator 330 may provide the generated pulsescript to QKD system 120.

Although FIG. 3 shows exemplary components of QKD management system 150,in other implementations, QKD management system 150 may include fewercomponents, different components, additional components, or differentlyarranged components than depicted in FIG. 3. Additionally, oralternatively, one or more components of QKD management system 150 mayperform one or more tasks described as being performed by one or moreother components of QKD management system 150.

FIG. 4 is a diagram illustrating exemplary components of QOES 310. Thecomponents of QOES 310 may be implemented, for example, via processor220 executing instructions from memory 230. Alternatively, some or allof the components of QOES 310 may be implemented via hard-wiredcircuitry. As shown in FIG. 4, QOES 310 may include a sensor interface410, a sensor data manager 415, an optical network management systeminterface 420, a fiber data manager 425, a QKD system interface 430, anoperational data manager 435, and an optical paths DB 440.

Sensor interface 410 may be configured to communicate with sensors 170.For example, sensor interface 410 may receive sensor data from sensors170 located in proximity to QKD link 130. Sensor data manager 415 mayaggregate and organize data received via sensor interface 410. Forexample, sensor data manager 415 may identify optical paths associatedwith sensor 170 and store sensor information from sensor 170 in opticalpaths DB 440 in connection with the identified optical paths. Opticalpaths DB 440 may store information relating to optical paths such as QKDlink 130. Exemplary information that may be stored in optical paths DB440 is described below with reference to FIG. 5.

Moreover, sensor data manager 415 may determine temporal informationassociated with the sensor data, such as a time and date when the sensordata was detected, whether an environmental disturbance has beendetected based on the sensor data, whether the environmental disturbanceis ongoing, has ended, or is of a periodic nature. Sensor data manager415 may prepare the sensor data into a format usable by QOOS 320, suchas, for example, by generating a feature vector to be used as an inputinto a machine learning model.

Optical network management system interface 420 may be configured tocommunicate with optical network management system 160. For example,optical network management system interface 420 may receive, fromoptical network management system 160, fiber parameters data relating tooptical fibers and/or optical devices for an optical network thatincludes QKD link 130. The fiber parameters data may include informationsuch as the types, lengths, and/or numbers of optical fibers and/oroptical devices associated with each connection, as well as opticalproperties associated with particular optical fibers and/or opticaldevices.

Fiber data manager 425 may aggregate and organize data received viaoptical network management system interface 420. For example, fiber datamanager 425 may identify optical paths associated with the fiberparameters data and store the fiber parameters data in optical paths DB440 in connection with the identified optical paths. Fiber data manager425 may prepare the sensor data into a format usable by QOOS 320, suchas, for example, by generating a feature vector to be used as an inputinto a machine learning model.

QKD system interface 430 may be configured to communicate with QKDsystem 120. For example, QKD system interface 430 may receive, from QKDsystem 120, operational parameters relating to QKD link 130. Theoperational parameters may include information such as, for example,information relating to the WDM channels used by QKD link 130.Operational data manager 435 may aggregate and organize data receivedvia QKD system interface 430. For example, operational data manager 435may identify optical paths associated with the operational parametersdata and store the operational parameters data in optical paths DB 440in connection with the identified optical paths. Operational datamanager 435 may prepare the operational parameters data into a formatusable by QOOS 320, such as, for example, by generating a feature vectorto be used as an input into a machine learning model.

Although FIG. 4 shows exemplary components of QOES 310, in otherimplementations, QOES 310 may include fewer components, differentcomponents, additional components, or differently arranged componentsthan depicted in FIG. 4. Additionally, or alternatively, one or morecomponents of QOES 310 may perform one or more tasks described as beingperformed by one or more other components of QOES 310.

FIG. 5 is a diagram illustrating exemplary information stored in opticalpaths DB 440. As shown in FIG. 5, optical paths DB 440 may include oneor more optical path records 500. Each optical record 500 may storeinformation relating to a particular optical path. Optical path record500 may include an optical path identifier (ID) field 510, an endpointsfield 520, a fibers field 530, a devices field 540, an environmentalparameters field 550, a fiber parameters field 560, an operationalparameters field 570, and a fidelity field 580.

Optical path ID field 510 may store an ID associated with an opticalpath (e.g., an ID associated with QKD link 130). Endpoints field 520 mayidentify the endpoints associated with the optical path, such as a firstQKD system 120 and a second QKD system 120. Fibers field 530 mayidentify particular optical fibers (e.g., spans) associated with theoptical path. Devices field 540 may identify optical devices associatedwith the optical path, such as ROADMs, optical transceivers, opticaltransponders, optical amplifiers, optical cross-connects, and/or othertypes of optical devices along the optical path.

Environmental parameters field 550 may store information forenvironmental parameters associated with the optical path, such aswhether the optical path is associated with a gravitational disturbance(e.g., density of bedrock in the vicinity of an optical fiber, etc.), aseismic or vibrational disturbance, a temperature disturbance, a lightor high-energy particle disturbance, and/or another type ofenvironmental disturbance that may affect the fidelity of transmittedqubits. Moreover, a particular disturbance may be associated with ameasured value, such as, for example, a measured temperature.

Fiber parameters field 560 may store information relating to fiberparameter values for the optical path, such as, for example, the totallength of the optical path, the span number (e.g., the number ofindividual optical fiber link, etc.), average span length, maximum spanlength, numbers and types of turns in the optical path, numbers andtypes of optical devices along the optical path material impediments(e.g., detected imperfections or impurities in the fiber, etc.),bandwidth distribution, and/or gain spectrum in the fibers and/ordevices along the optical path, fiber linearity and/or non-linearityfunctions for particular fibers and/or devices along the optical path,and/or other types of fiber parameter values.

Operational parameters field 570 may store information relating tooperational parameter values for the optical path, such as, for example,a frequency for a WDM channel associated with an optical fiber path, apower level for a WDM channel associated with an optical fiber path, anumber of WDM channels associated with an optical fiber path, adifferential group delay associated with an optical fiber path, BR-MFIinformation associated with an optical fiber path, and/or other types ofoperational parameters.

Fidelity field 580 may store one or more measured fidelity values,and/or additional performance metrics, for the optical fiber path alongparticular transmission distance for particular pulse scripts asdetermined by QKD system 120 and/or by optical network management system160. Fidelity may be measured as, for example, the fraction orpercentage of information bits that have been correctly retrieved from atransmission. The performance metrics may include a bit error rate (BER)value, a Q-factor value, a signal-to-noise ratio (SNR) value, and/orother types of performance metrics. The performance metrics values maybe used to train and/or update machine learning models managed by QOOS320.

Although FIG. 5 shows exemplary components of optical paths DB 440, inother implementations, optical paths DB 440 may include fewercomponents, different components, additional components, or differentlyarranged components than depicted in FIG. 5.

FIG. 6 is a diagram illustrating exemplary components of QOOS 320. Thecomponents of QOOS 320 may be implemented, for example, via processor220 executing instructions from memory 230. Alternatively, some or allof the components of QOOS 320 may be implemented via hard-wiredcircuitry. As shown in FIG. 6, QOOS 320 may include a pulse script DB610, a machine learning framework 620, and one or more machine learningmodels 630-A to 630-N (referred to herein collectively as “machinelearning models 630” and individually as “machine learning model 630”).

Pulse script DB 610 may store a set of pulse scripts, for a set ofpulses to be generated by an optical transmitter, that may be used asoutput classes by machine learning framework 620. As previouslymentioned, a pulse script may define the amplitude, frequency, and/orduration of a set of optical pulses and/or time intervals between eachof the set of optical pulses. For example, each pulse script may berepresented as an output vector with the features of the output vectorcorresponding to the amplitude, frequency, and/or duration of individualpulses and/or the time periods between particular pulses. The set ofpulse scripts may be updated at particular intervals based onperformance parameters measured for particular pulse scripts.Furthermore, in some implementations, a machine learning model may betrained to generate new pulse scripts using a generative neural network,such as, for example, a generative adversarial network (GAN).

Machine learning framework 620 may manage, train, and/or update machinelearning models 630 and may select a particular machine learning model630 for selecting a pulse script for a QKD transmission. A particularmachine learning model 630 may be selected based on a desiredperformance parameter value associated with a QKD transmission and/or anidentified optical transmission path, based on available inputparameters for the identified optical transmission path, based on aperformance metric associated with machine learning model 630, and/orbased on another criterion.

Machine learning model 630 may include a machine learning model trainedto select a pulse script for a QKD transmission. Machine learning model630 may include a K-nearest neighbor (KNN) classifier, a naive Bayesianclassifier, a logical regression classifier, a neural networkclassifier, a support vector machine (SVM) classifier, a decision treeclassifier, a random forest classifier, a maximum entropy classifier, akernel density estimation classifier, and/or another type of classifier.

A machine learning model may be trained as a classifier with a set ofoutput classes corresponding to a set of pulse scripts. In someimplementations, the output classes may correspond to particular pulsescripts. In other implementation, the output classes may correspond tothe amplitude, frequency, and/or duration of individual pulses as wellas the time intervals between the individual pulses. Furthermore, amachine learning model may include one or more target performanceparameters, such as BER, Q-factor, SNR, and/or another type ofperformance parameter and the machine learning model may be trained toselect a pulse script that maximizes the target performance parameters.Different types of machine learning models may be trained using adifferent set of input parameters and a different target parameter.

As an example, a KNN and/or a random forest machine learning model maybe trained to select a pulse script to optimize BER based on a set ofinput parameters that includes traffic volume, modulation format, thetotal length of fiber links in the transmission path, the length of thelongest fiber link in the transmission path, and/or the number of linksin the transmission path. As another example, a machine learning modelbased on stochastic gradient descent with polynomial regression may betrained to select a pulse script to optimize BER based on a set ofinputs that include optical SNR (OSNR), baud rate, modulation format,forward error correction (FEC) type, and/or optical slot-size. As yetanother example, a deep convolutional neural network (CNN) may betrained to select a pulse script to optimize BER based on a set ofinputs that include a total length of transmission path, span length,central frequency of WDM channels, the number of optical slots,modulation format, number of erbium-doped fiber amplifiers (EDFAs), thenumber of fiber links, and a BER associated with the transmission path.

As yet another example, a case-based reasoning neural network machinelearning model may be trained to select a pulse script to optimizeQ-factor based on a wavelength for a QKD transmission, a total length ofthe transmission path, a sum of the co-propagating light paths per fiberlink, and/or the standard deviation of the total number ofco-propagating light paths. As yet another example, a transfer learningneural network machine learning model may be trained to select a pulsescript to optimize Q-factor based on channel loading and/or aper-channel output power.

As yet another example, a machine learning model may be used incombination with a model of the physical layer of the transmission pathto select a pulse script to optimize SNR based on the length of thetransmission path, the link load for the transmission path, the numberof crossed EDFAs, the transmission power, and/or a noise valueassociated with the transmission path.

Although FIG. 6 shows exemplary components of QOOS 320, in otherimplementations, QOOS 320 may include fewer components, differentcomponents, additional components, or differently arranged componentsthan depicted in FIG. 6. Additionally, or alternatively, one or morecomponents of QOOS 320 may perform one or more tasks described as beingperformed by one or more other components of QOOS 320.

FIG. 7 illustrates a flowchart of a process 700 for processing a quantumkey distribution transmission according to an implementation describedherein. In some implementations, process 700 of FIG. 7 may be performedby QKD management system 150. In other implementations, some or all ofprocess 700 may be performed by another device or a group of devicesseparate from QKD management system 150.

As shown in FIG. 7, process 700 may include selecting a QKD transmission(block 710) and identifying an optical fiber path via which the QKDtransmission is to be made (block 720). For example, QKD managementsystem 150 may receive a request from QKD system 120 to optimize a QKDtransmission. The request may include, for example, informationidentifying a QKD link 130 for the QKD transmission, a time periodduring which the QKD transmission is to take place, operationalparameters for the QKD transmission, an amount of data that is to betransmitted, and/or other types of information that may be used by QKDmanagement system 150 to optimize the QKD transmission by selecting apulse script.

Process 700 may further include determining values for transmissionparameters for the identified optical path (block 730). For example,QOES 310 may access optical paths DB 440, identify an optical pathrecord 500 for the identified optical path, and provide parameter valuesassociated with the optical path to QOOS 320.

Process 700 may further include selecting a pulse script for the opticalfiber path (block 740). For example, QOOS 320 may select a particularmachine learning model 630 based on the available parameter value, basedon a selected performance requirement, and/or based on the performanceof various machine learning models and may provide the receivedparameter values as an input vector to the selected machine learningmodel 630 to generate a classifier decision that indicates the pulsescript class, corresponding to the highest performance value (e.g.,longest transmission distance above a particular fidelity value, BERQ-factor, SNR, etc.), which should be selected. Pulse script generator330 may then select or generate a pulse script based on the output ofthe selected machine learning model 360. In some implementations, apulse script may be selected without using a machine learning model. Forexample, a standard pulse script used to generate qubits may be selectedbased on a set of requirements and a set of parameter values. Such aselection may be performed using a look-up table, a tree, and/or anothertype of data structure that relates pulse scripts to parameter valuesand/or performance requirements.

Process 700 may further include sending the QKD via the identifiedoptical fiber path using the selected pulse script (block 750). Forexample, QKD management system 150 may provide a pulse script to QKDsystem 120 and QKD system 120 may use the provided pulse script to sendthe QKD transmission as qubits along QKD link 130.

FIG. 8 is a diagram of a plot 800 of fidelity over transmission distanceaccording to an implementation described herein. As shown in plot 800, astandard fidelity of a QKD transmission may decline over transmissiondistance without optimizing a pulse script for generating optical pulsesfor the QKD transmission. When an optimized pulse script is selected,the QKD transmission may experience an improved fidelity of thetransmission distance in comparison to the standard fidelity.

FIG. 9 is a diagram 900 of an exemplary pulse script according to animplementation described herein. As shown in FIG. 9, diagram 900includes a pulse sequence 910, corresponding to a pulse script,representing a sequence of radio frequency pulses separated by timeintervals, where t represents a ratio of the time duration of a pulseand the time period between pulses. The strength of a pulse as afunction of amplitude of the wave is shown in plot 920 withcorresponding Bloch sphere representations of the effective vector. Theeffective state of the vector may represent the respective qubit statesin plot 920. The series of pulses of pulse sequence 910 may represent aneffective read out state of the qubits from an initial state.

In the preceding specification, various preferred embodiments have beendescribed with reference to the accompanying drawings. It will, however,be evident that various modifications and changes may be made thereto,and additional embodiments may be implemented, without departing fromthe broader scope of the invention as set forth in the claims thatfollow. The specification and drawings are accordingly to be regarded inan illustrative rather than restrictive sense.

For example, while a series of blocks have been described with respectto FIG. 7, the order of the blocks may be modified in otherimplementations. Further, non-dependent blocks and/or signals may beperformed in parallel.

It will be apparent that systems and/or methods, as described above, maybe implemented in many different forms of software, firmware, andhardware in the implementations illustrated in the figures. The actualsoftware code or specialized control hardware used to implement thesesystems and methods is not limiting of the embodiments. Thus, theoperation and behavior of the systems and methods were described withoutreference to the specific software code—it being understood thatsoftware and control hardware can be designed to implement the systemsand methods based on the description herein.

Further, certain portions, described above, may be implemented as acomponent that performs one or more functions. A component, as usedherein, may include hardware, such as a processor, an ASIC, or a FPGA,or a combination of hardware and software (e.g., a processor executingsoftware).

It should be emphasized that the terms “comprises”/“comprising” whenused in this specification are taken to specify the presence of statedfeatures, integers, steps or components but does not preclude thepresence or addition of one or more other features, integers, steps,components or groups thereof.

The term “logic,” as used herein, may refer to a combination of one ormore processors configured to execute instructions stored in one or morememory devices, may refer to hardwired circuitry, and/or may refer to acombination thereof. Furthermore, a logic may be included in a singledevice or may be distributed across multiple, and possibly remote,devices.

For the purposes of describing and defining the present invention, it isadditionally noted that the term “substantially” is utilized herein torepresent the inherent degree of uncertainty that may be attributed toany quantitative comparison, value, measurement, or otherrepresentation. The term “substantially” is also utilized herein torepresent the degree by which a quantitative representation may varyfrom a stated reference without resulting in a change in the basicfunction of the subject matter at issue.

To the extent the aforementioned embodiments collect, store, or employpersonal information of individuals, it should be understood that suchinformation shall be collected, stored, and used in accordance with allapplicable laws concerning protection of personal information.Additionally, the collection, storage and use of such information may besubject to consent of the individual to such activity, for example,through well known “opt-in” or “opt-out” processes as may be appropriatefor the situation and type of information. Storage and use of personalinformation may be in an appropriately secure manner reflective of thetype of information, for example, through various encryption andanonymization techniques for particularly sensitive information.

No element, act, or instruction used in the present application shouldbe construed as critical or essential to the embodiments unlessexplicitly described as such. Also, as used herein, the article “a” isintended to include one or more items. Further, the phrase “based on” isintended to mean “based, at least in part, on” unless explicitly statedotherwise.

1. A method comprising: selecting, by a device, a quantum keydistribution transmission; identifying, by the device, an optical fiberpath via which the quantum key distribution transmission is to beperformed; determining, by the device, one or more values for at leastone transmission parameter for the identified optical fiber path;selecting, by the device, a pulse script for the optical fiber pathbased on the determined one or more values for the at least onetransmission parameter; and performing, by the device, the quantum keydistribution transmission via the identified optical fiber path usingthe selected pulse script.
 2. The method of claim 1, wherein the pulsescript defines a plurality of optical signal pulses.
 3. The method ofclaim 2, wherein the pulse script further defines time intervals betweenparticular pulses of the plurality of optical pulses.
 4. The method ofclaim 2, wherein the pulse script further defines an amplitude,frequency, or duration of a particular pulse of the plurality of opticalpulses.
 5. The method of claim 1, wherein the at least one transmissionparameter includes an environmental parameter, a fiber parameter, or anoperational parameter.
 6. The method of claim 5, wherein the at leastone transmission parameter includes the environmental parameter, themethod further comprising: obtaining an environmental parameter valuefor the environmental parameter from an environmental sensor associatedwith the identified optical fiber path.
 7. The method of claim 5,wherein the at least one transmission parameter includes the fiberparameter, the method further comprising: obtaining a fiber parametervalue for the fiber parameter from a fiber management system associatedwith the identified optical fiber path.
 8. The method of claim 1,wherein the at least one transmission parameter includes at least two ofa gravitational disturbance parameter, a light disturbance parameter, atemperature disturbance parameter, or a vibrational disturbanceparameter.
 9. The method of claim 1, wherein the at least onetransmission parameter includes at least two of a material impediment ina fiber along the identified optical fiber path, a number of fiber turnsalong the identified optical fiber path, a fiber linearity functionassociated with the identified optical fiber path, a fiber non-linearityfunction associated with the identified optical fiber path, a pathlength for the identified optical fiber path, a span number for theidentified optical fiber path, a maximum span length for the identifiedoptical fiber path, or an average span length for the identified opticalfiber path.
 10. The method of claim 1, wherein the at least onetransmission parameter includes at least two of a frequency for awavelength division multiplexing (WDM) channel associated with theidentified optical fiber path, a power level for a WDM channelassociated with the identified optical fiber path, a number of WDMchannels associated with the identified optical fiber path, or adifferential group delay associated with the identified optical fiberpath.
 11. The method of claim 1, wherein selecting the pulse script forthe optical fiber path based on the determined one or more values forthe at least one transmission parameter includes: selecting the pulsescript for the optical fiber path based on the determined one or morevalues for the at least one transmission parameter using a machineteaming model.
 12. A device comprising: a hardware processor configuredto execute instructions to: select a quantum key distributiontransmission; identify an optical fiber path via which the quantum keydistribution transmission is to be performed; determine one or morevalues for at least one transmission parameter for the identifiedoptical fiber path; select a pulse script for the optical fiber pathbased on the determined one or more values for the at least onetransmission parameter; and perform the quantum key distributiontransmission via the identified optical, fiber path using the selectedpulse script.
 13. The device of claim 12, wherein the pulse scriptdefines at least one of a set of time intervals between particularpulses of a plurality of optical pulses, or an amplitude, frequency, orduration for particular pulses of the plurality of optical pulses. 14.The device of claim 12, wherein the at least one transmission parameterincludes an environmental parameter, and Wherein the processor isfurther configured to: obtain an environmental parameter value for theenvironmental parameter from an environmental sensor associated with theidentified optical fiber path.
 15. The device of claim 12, wherein theat least one transmission parameter includes a fiber parameter, andwherein the processor is further configured to: obtain a fiber parametervalue for the fiber parameter from a fiber management system associatedwith the identified optical fiber path.
 16. The device of claim 12,wherein the at least one transmission parameter includes at least two ofa gravitational disturbance parameter, a light disturbance parameter, atemperature disturbance parameter, or a vibrational disturbanceparameter.
 17. The device of claim 12, wherein the at least onetransmission parameter includes at least two of a material impediment ina fiber along the identified optical fiber path, a number of fiber turnsalong the identified optical fiber path, a fiber linearity functionassociated with the identified optical fiber path, a fiber non-linearityfunction associated with the identified optical fiber path, a pathlength for the identified optical fiber path, a span number for theidentified optical fiber path, a maximum span length for the identifiedoptical fiber path, or an average span length for the identified opticalfiber path.
 18. The device of claim 12, wherein the at least onetransmission parameter includes at least two of a frequency for awavelength division multiplexing (WDM) channel associated with theidentified optical fiber path, a power level for a WDM channelassociated with the identified optical fiber path, a number of WDMchannels associated with the identified optical fiber path, or adifferential group delay associated with the identified optical fiberpath.
 19. The device of claim 12, wherein, when select the pulse scriptfor the optical fiber path based on the determined one or more valuesfor the at least one transmission parameter, the processor is furtherconfigured to: select the pulse script for the optical fiber path basedon the determined one or more values for the at least one transmissionparameter using a machine learning model.
 20. A system comprising: afirst device configured to: collect values for at least one transmissionparameter associated with a plurality of optical fiber paths; and asecond device configured to: select a quantum key distributiontransmission; identify an optical fiber path, of the plurality of fiberpaths, via which the quantum key distribution transmission is to beperformed; obtain, from the first device, one or more values for the atleast one transmission parameter value for the at least one transmissionparameter for the identified optical fiber path; select a pulse scriptfor the optical fiber path based on the determined one or more valuesfor the at least one transmission parameter value; and perform thequantum key distribution transmission via the identified optical fiberpath using the selected pulse script.